1. Field of the Invention
The invention relates to integrated circuits, and more particularly, to the programming of integrated circuit packaging.
2. Description of the Related Art
Integrated circuits such as microprocessors can be run at different clock speeds and with different supply voltages. The determination of what is the appropriate clock speed and appropriate voltage depends on many factors. A higher clock speed requires a higher supply voltage. In addition, the higher clock speed results in additional heat and power being dissipated. Microprocessors utilized in mobile applications are particularly sensitive to power dissipation and generally require the lowest power dissipation and thus require the lowest supply voltage that can achieve the rated clock speed Microprocessors used in desktop applications are less sensitive to power dissipation considerations.
In general, microprocessor product yield, performance (MHz) and reliability are affected by the voltage supply setting. Within a range of only several hundred millivolts, dramatic differences can be seen in yield, performance and reliability, even from the same wafer lot. Choosing the best voltage is usually a compromise of yield, performance and reliability since the same value of voltage is usually chosen for a large population.
A higher percentage of a given population of microprocessors could operate at higher performance levels (thus creating higher revenue) if each microprocessor could operate at its own specific voltage. One solution would be to mark each processor with a number or symbol indicating its voltage and/or speed rating. However, that provides no guarantee that the appropriate voltage is supplied to the microprocessor in the final system.
Referring to FIG. 1, one prior art approach for providing the appropriate voltage and frequency values in a computer system is illustrated. Central processing unit (CPU) 101 receives bus frequency signals 103 (BF[2:0]), which provide a multiplier used by the processor to multiply a bus clock (not shown). The multiplied bus clock is used by the CPU to clock its internal logic. CPU 101 also receives core voltage 105 (commonly referred to in x86 architectures as Vcc2) from CPU core voltage regulator 107. Other voltages, which are typically supplied to the CPU, e.g., Vcc3 (I/O voltage) are not shown. Core voltage regulator 107 is programmable and receives voltage control inputs 109 (also referred to as voltage ID (VID) signals) which determine the voltage level supplied to CPU 101. The values for the both the VID signals and the BF pins are provided by the settings of jumpers 111.
It is conceivable to set the jumpers to correspond to the marking (number or symbol) on the processor that indicates its voltage and/or speed rating. However, that approach provides no guarantee that appropriate voltage and frequency settings will be utilized. In fact, certain unscrupulous suppliers of computer systems have been known to provide systems having higher than recommended voltages and frequencies. Since companies typically qualify and validate chips at certain voltage and frequencies, such overclocking or excessive voltage can result in shorter product lifetimes, decreased reliability and excessive product returns.
Providing information to users, which specifies the correct voltage and hoping that the correct voltage is subsequently supplied to the processor by circuitry on the board, is subject both to intentional misuse and unintentional error. In addition, the more possible voltage settings that are provided, the greater the possibility for error.
An additional factor to be considered is that if information on the preferred operating voltage and frequency for a specific chip is available only after testing that chip, programming that information on the die after testing requires that additional processing steps be performed on the die. Those additional processing steps may cause increased cost.
Another problem with jumper arrangements is that whenever a new integrated circuit and package is introduced, the jumper settings on the motherboard or other circuit board normally become obsolete. This makes it necessary for the consumer to either replace the entire notherboard or Circuit board or attempt to change the jumper settings, whenever a new integrated circuit, such as a microprocessor with a different operating frequency or circuit with a different operating voltage, is introduced. Average consumers do normally not have the training to change jumper settings on a circuit board in order to upgrade an integrated circuit. This leads to less frequent upgrading by consumers, who may not desire changing an entire motherboard or attempt to change jumper settings to upgrade, but would be more willing to upgrade if it only involved replacing the package and integrated circuit with a new integrated circuit and package.
Thus, there is a need to specify the correct operating parameters of an integrated circuit, such as a microprocessor, in a manner that allows eventual replacement of the integrated circuit with another integrated circuit with different operating parameters, without changing the circuit board or changing jumper settings on the circuit board.
This and other needs are met by embodiments of the present invention which provide a method of reconfiguring a circuit board and package arrangement in which a programmable first package arrangement having a first package substrate and a first integrated circuit is disconnected from a circuit board. This first package arrangement was previously programmed to operate with a first set of operating parameters. A programmable second package arrangement having a second package substrate and a second integrated circuit is then connected to the circuit board. This second package arrangement is substantially identical to the first package arrangement except it is programmed to operate with a second set of operating parameters different from the first set of operating parameters.
By providing a replaceable package arrangement, which is programmable, circuit board obsolescence is avoided. When a new integrated circuit design is introduced, having different operating parameters, such as operating frequency or voltage, the old package and integrated circuit previously programmed with the old operating frequency and voltage, is removed from the circuit board. A new package and integrated circuit, programmed with the new operating parameters, is then connected to the circuit board.
The earlier stated need is also met by another embodiment of the present invention that provides a circuit board and package arrangement comprising a circuit board with a socket configured to receive a package. The arrangement includes a replaceable package and integrated circuit die configured to electrically and removably connect to the socket The replaceable package is one-time programmable to adapt the package and integrated circuit die to programmed operating parameters.